package br.com.sg5.model.dao.impl;

import java.util.ArrayList;
import java.util.List;

import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;

import br.com.sg5.model.bean.Empresa;
import br.com.sg5.model.bean.Municipio;
import br.com.sg5.model.dao.EmpresaDao;
import br.com.sg5.model.dao.InterfaceDAO;

@Repository("EmpresaDao")
public class EmpresaDaoImpl implements EmpresaDao {

	private SessionFactory sessionFactory;
	private Municipio municipio = new Municipio();

	@Autowired
	public void setSessionFactory(SessionFactory sessionFactory) {
		this.sessionFactory = sessionFactory;
	}

	@SuppressWarnings("unchecked")
	@Override
	public List<Empresa> getEmpresa() {

		Query query = sessionFactory.getCurrentSession().createQuery(
				"from Empresa");

		return query.list();
	}

	@Override
	public List<Empresa> getEmp() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public boolean salvar() {
		Session session = sessionFactory.getCurrentSession();
		InterfaceDAO<Empresa> empresaDAO = new HibernateDAO<Empresa>(
				Empresa.class, session);
		Empresa empresa = new Empresa();
		try {
			empresa.setEm_nome("teste");
			empresa.setEm_nfantasia("teste");

			empresaDAO.salvar(empresa);

		} catch (Exception e) {
			System.out.println("Erro : " + e.getLocalizedMessage());
		}

		empresaDAO.salvar(empresa);
		return true;
	}

}
